#ifndef _GWBASE_BASE_DAEMONIZE_H_
#define _GWBASE_BASE_DAEMONIZE_H_

#include <boost/function.hpp>

namespace dicom {

class Daemon {
 public:
  typedef boost::function<int(int argc, char** argv)> MainFunction;

  Daemon(const MainFunction& main_func)
      : main_(main_func) { }
  ~Daemon() { }

  int Run(int argc, char** argv);

 private:
  MainFunction main_;
};


}


#endif // _GWBASE_BASE_DAEMONIZE_H_
